var Mint = new Object(); Mint.save = function() { var now = new Date(); var debug = false; // this is set by php var path = '/mint/mint' + ((debug)?'.debug':'') + '.php?key=323833326a63366a4b774d7150353856473361713131'; // Loop through the different plug-ins to assemble the query string for (var developer in this) { for (var plugin in this[developer]) { if (this[developer][plugin] && this[developer][plugin].onsave) { path += this[developer][plugin].onsave(); }; }; }; // Slap the current time on there to prevent caching on subsequent page views in a few browsers path += '&'+now.getTime(); // Redirect to the debug page if (debug) { window.location.href = path; return; }; // Record this visit document.write(''); }; // incredibly funky onload add-event scripting, for all browsers if(typeof window.addEventListener != 'undefined') { //.. gecko, safari, konqueror and standard window.addEventListener('load', outclicks_init, false); } else if(typeof document.addEventListener != 'undefined') { //.. opera 7 document.addEventListener('load', outclicks_init, false); } else if(typeof window.attachEvent != 'undefined') { //.. win/ie window.attachEvent('onload', outclicks_init); } //** remove this condition to degrade older browsers else { //.. mac/ie5 and anything else that gets this far //if there's an existing onload function if(typeof window.onload == 'function') { //store it var existing = onload; //add new onload handler window.onload = function() { //call existing onload function existing(); //call outclicks_init onload function outclicks_init(); }; } else { //setup onload function window.onload = outclicks_init; } } function outclicks_init () { links = document.getElementsByTagName('a'); this_domain = self.location.toString().replace(/^[^\/]*\/+([^\/]*)(\/.*)?/,'$1'); for (i=0; i < links.length; i++) { // if it is off domain or a js link, don't record. if(links[i].href.match(eval('/^(http(s)?:\\/\\/)?'+this_domain+'/')) || links[i].href.indexOf('javascript:') == 1) continue; links[i].onclick = trackOutclicks; } } function trackOutclicks() { var path = '/mint/pepper/andrewsutherland/outclicks/data.php'; path += "?outclick="+escape(this.href); path += "&from_title="+escape(document.title); path += "&from="+escape(self.location); // old browsers if (typeof encodeURIComponent == 'undefined') { // when user clicks a site, then back, then clicks another, don't retrack their hits // don't worry, it confuses me too c = document.getElementById('outClickTracker'); if (c) c.parentNode.removeChild(c); document.body.innerHTML += ''; } else { var data = false; /*@cc_on @*/ /*@if (@_jscript_version >= 5) try { data = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { data = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { data = false; } } @end @*/ if (!data && typeof XMLHttpRequest!='undefined') data = new XMLHttpRequest(); if (data) data.open("GET", path, true); data.send(null); } } if (!Mint.SI) { Mint.SI = new Object(); } Mint.SI.UserAgent007 = { flashVersion : 0, resolution : '0x0', detectFlashVersion : function () { var m =16; var ua = navigator.userAgent.toLowerCase(); if (navigator.plugins && navigator.plugins.length) { var p = navigator.plugins['Shockwave Flash']; if (typeof p == 'object') { for (var i=m;i>=3;i--) { if (p.description && p.description.indexOf(i + '.') != -1) { this.flashVersion = i; break; } } } } else if (ua.indexOf("msie") != -1 && ua.indexOf("win")!=-1 && parseInt(navigator.appVersion) >= 4 && ua.indexOf("16bit")==-1) { var vb = ' \nOn Error Resume Next \nDim obFlash \nFor i = ' + m + ' To 3 Step -1 \n Set obFlash = CreateObject("ShockwaveFlash.ShockwaveFlash." & i) \n If IsObject(obFlash) Then \n Mint.SI.UserAgent007.flashVersion = i \n Exit For \n End If \nNext \n<'+'/scr' + 'ipt\> \n'; document.write(vb); } else if (ua.indexOf("webtv/2.5") != -1) this.flashVersion = 3; else if (ua.indexOf("webtv") != -1) this.flashVersion = 2; return this.flashVersion; }, onsave : function() { this.resolution = screen.width+'x'+screen.height; return '&resolution=' + this.resolution + '&flash_version=' + this.flashVersion; } }; Mint.SI.UserAgent007.detectFlashVersion();if (!Mint.SI) { Mint.SI = new Object(); } Mint.SI.Referrer = { onsave : function() { if (typeof Mint_SI_DocumentTitle=='undefined') { Mint_SI_DocumentTitle = document.title; } return '&referer=' + escape(document.referrer) + '&resource=' + escape(document.URL) + '&resource_title=' + escape(Mint_SI_DocumentTitle); } }; var ol_extensions = ''; var is_download = 0; function getExtension(value) { return value.substring(value.lastIndexOf('.') + 1,value.length); } function isdefined( variable) { return (typeof(window[variable]) == "undefined")? false: true; } function ol_get_domain(str) { if (str.substr(0,7) == 'http://') str = str.substr(7); if (str.substr(0,8) == 'https://') str = str.substr(8); str = str.substr(0,str.indexOf('/')); str = str.replace('www.',''); return str; } if (!isdefined('addLoadEvent')) { function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function() { oldonload(); func(); } } } } function activateDownloads() { ext_list = ol_extensions.split(','); var e=document.getElementsByTagName("a"); for(var i=0;i